263 research outputs found
Some relational structures with polynomial growth and their associated algebras II: Finite generation
The profile of a relational structure is the function which
counts for every integer the number, possibly infinite, of
substructures of induced on the -element subsets, isomorphic
substructures being identified. If takes only finite values, this
is the Hilbert function of a graded algebra associated with , the age
algebra , introduced by P.~J.~Cameron.
In a previous paper, we studied the relationship between the properties of a
relational structure and those of their algebra, particularly when the
relational structure admits a finite monomorphic decomposition. This
setting still encompasses well-studied graded commutative algebras like
invariant rings of finite permutation groups, or the rings of quasi-symmetric
polynomials.
In this paper, we investigate how far the well know algebraic properties of
those rings extend to age algebras. The main result is a combinatorial
characterization of when the age algebra is finitely generated. In the special
case of tournaments, we show that the age algebra is finitely generated if and
only if the profile is bounded. We explore the Cohen-Macaulay property in the
special case of invariants of permutation groupoids. Finally, we exhibit
sufficient conditions on the relational structure that make naturally the age
algebra into a Hopf algebra.Comment: 27 pages; submitte
Stream Fusion, to Completeness
Stream processing is mainstream (again): Widely-used stream libraries are now
available for virtually all modern OO and functional languages, from Java to C#
to Scala to OCaml to Haskell. Yet expressivity and performance are still
lacking. For instance, the popular, well-optimized Java 8 streams do not
support the zip operator and are still an order of magnitude slower than
hand-written loops. We present the first approach that represents the full
generality of stream processing and eliminates overheads, via the use of
staging. It is based on an unusually rich semantic model of stream interaction.
We support any combination of zipping, nesting (or flat-mapping), sub-ranging,
filtering, mapping-of finite or infinite streams. Our model captures
idiosyncrasies that a programmer uses in optimizing stream pipelines, such as
rate differences and the choice of a "for" vs. "while" loops. Our approach
delivers hand-written-like code, but automatically. It explicitly avoids the
reliance on black-box optimizers and sufficiently-smart compilers, offering
highest, guaranteed and portable performance. Our approach relies on high-level
concepts that are then readily mapped into an implementation. Accordingly, we
have two distinct implementations: an OCaml stream library, staged via
MetaOCaml, and a Scala library for the JVM, staged via LMS. In both cases, we
derive libraries richer and simultaneously many tens of times faster than past
work. We greatly exceed in performance the standard stream libraries available
in Java, Scala and OCaml, including the well-optimized Java 8 streams
Effective Invariant Theory of Permutation Groups using Representation Theory
Using the theory of representations of the symmetric group, we propose an
algorithm to compute the invariant ring of a permutation group. Our approach
have the goal to reduce the amount of linear algebra computations and exploit a
thinner combinatorial description of the invariant ring.Comment: Draft version, the corrected full version is available at
http://www.springer.com
Programming Languages For Hard Real-Time Embedded Systems
International audienceHard real-time embedded systems have traditionally been implemented using low level programming languages (such as ADA or C) at a level very close to the underlying operating system. However, for several years now the industry has started using higher level modelling languages, at least for early simulation and verification steps. The objective of this paper is to study existing formal languages including high level real-time primitives. Our review is built on the case study of an aerospace automated transfer vehicle, the particularity of which is to be composed of several multi-periodic communicating processes. In this paper, we emphasize the strengths and weaknesses of existing programming approaches when implementing this kind of system. As a result, the choice of the base rate of the program appears to have a major influence, not only on the difficulty to program the system correctly but also on the execution platform required to execute the program (operating system, scheduler, ...)
- …